package com.ktgj.flight.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ktgj.common.core.annotation.Excel;
import com.ktgj.common.core.web.domain.BaseEntity;

/**
 * 机票订单发票对象 flight_order_invoice
 * 
 * @author ruoyi
 * @date 2022-01-13
 */
public class FlightOrderInvoice extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long invoiceId;

    /** 订单Id */
    @Excel(name = "订单Id")
    private String orderId;

    /** 发票抬头 */
    @Excel(name = "发票抬头")
    private String invoiceName;

    /** 发票金额 */
    @Excel(name = "发票金额")
    private BigDecimal invoiceCash;

    /** 发票项目 (机票款，不可修改) */
    @Excel(name = "发票项目 (机票款，不可修改)")
    private String invoiceItem;

    /** 快递公司 */
    @Excel(name = "快递公司")
    private String expressCompany;

    /** 快递单号 */
    @Excel(name = "快递单号")
    private String expressNum;

    /** 发票状态：
            待开发票=1
            已打印=2
            已邮寄=3
            处理完成=4 */
    @Excel(name = "发票状态：待开发票=1 已打印=2 已邮寄=3 处理完成=4")
    private Long status;

    /** 最后一次操作时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后一次操作时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastDate;

    /** 操作员工Id */
    @Excel(name = "操作员工Id")
    private Long employeeId;

    /** 配送Id */
    @Excel(name = "配送Id")
    private Long assignId;

    /** 操作说明 */
    @Excel(name = "操作说明")
    private String operatedesc;

    /** 备注 */
    @Excel(name = "备注")
    private String memo;

    /** 发票代码 */
    @Excel(name = "发票代码")
    private String invoiceCode;

    /** 发票编号 */
    @Excel(name = "发票编号")
    private String invoiceNum;

    /** 发票类型：1普通发票  ，2专用发票 */
    @Excel(name = "发票类型：1普通发票  ，2专用发票")
    private Long invoiceType;

    /** 公司对公开户行 */
    @Excel(name = "公司对公开户行")
    private String bankAccount;

    /** 公司对公账号 */
    @Excel(name = "公司对公账号")
    private String companyId;

    /** 税号 */
    @Excel(name = "税号")
    private String taxId;

    /** 公司地址 */
    @Excel(name = "公司地址")
    private String companyAddress;

    /** 公司电话 */
    @Excel(name = "公司电话")
    private String companyPhone;

    /** 购方地址 */
    @Excel(name = "购方地址")
    private String address;

    /** 购方电话 */
    @Excel(name = "购方电话")
    private String phone;

    /** 购方银行账号 */
    @Excel(name = "购方银行账号")
    private String bankaccount;

    /** 购方银行名称 */
    @Excel(name = "购方银行名称")
    private String bankname;

    /** 配送方式(1:快递，2:Emai ，3:快递和Email) */
    @Excel(name = "配送方式(1:快递，2:Emai ，3:快递和Email)")
    private Long deliverytype;

    /** 收件人 */
    @Excel(name = "收件人")
    private String consignee;

    /** 收件地址 */
    @Excel(name = "收件地址")
    private String invoicdeAddress;

    /** 联系电话 */
    @Excel(name = "联系电话")
    private String phonenumber;

    /** 电子邮箱 */
    @Excel(name = "电子邮箱")
    private String email;

    public void setInvoiceId(Long invoiceId) 
    {
        this.invoiceId = invoiceId;
    }

    public Long getInvoiceId() 
    {
        return invoiceId;
    }
    public void setOrderId(String orderId)
    {
        this.orderId = orderId;
    }

    public String getOrderId()
    {
        return orderId;
    }
    public void setInvoiceName(String invoiceName) 
    {
        this.invoiceName = invoiceName;
    }

    public String getInvoiceName() 
    {
        return invoiceName;
    }
    public void setInvoiceCash(BigDecimal invoiceCash)
    {
        this.invoiceCash = invoiceCash;
    }

    public BigDecimal getInvoiceCash()
    {
        return invoiceCash;
    }
    public void setInvoiceItem(String invoiceItem) 
    {
        this.invoiceItem = invoiceItem;
    }

    public String getInvoiceItem() 
    {
        return invoiceItem;
    }
    public void setExpressCompany(String expressCompany) 
    {
        this.expressCompany = expressCompany;
    }

    public String getExpressCompany() 
    {
        return expressCompany;
    }
    public void setExpressNum(String expressNum) 
    {
        this.expressNum = expressNum;
    }

    public String getExpressNum() 
    {
        return expressNum;
    }
    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }
    public void setLastDate(Date lastDate) 
    {
        this.lastDate = lastDate;
    }

    public Date getLastDate() 
    {
        return lastDate;
    }
    public void setEmployeeId(Long employeeId) 
    {
        this.employeeId = employeeId;
    }

    public Long getEmployeeId() 
    {
        return employeeId;
    }
    public void setAssignId(Long assignId) 
    {
        this.assignId = assignId;
    }

    public Long getAssignId() 
    {
        return assignId;
    }
    public void setOperatedesc(String operatedesc) 
    {
        this.operatedesc = operatedesc;
    }

    public String getOperatedesc() 
    {
        return operatedesc;
    }
    public void setMemo(String memo) 
    {
        this.memo = memo;
    }

    public String getMemo() 
    {
        return memo;
    }
    public void setInvoiceCode(String invoiceCode) 
    {
        this.invoiceCode = invoiceCode;
    }

    public String getInvoiceCode() 
    {
        return invoiceCode;
    }
    public void setInvoiceNum(String invoiceNum) 
    {
        this.invoiceNum = invoiceNum;
    }

    public String getInvoiceNum() 
    {
        return invoiceNum;
    }
    public void setInvoiceType(Long invoiceType) 
    {
        this.invoiceType = invoiceType;
    }

    public Long getInvoiceType() 
    {
        return invoiceType;
    }
    public void setBankAccount(String bankAccount) 
    {
        this.bankAccount = bankAccount;
    }

    public String getBankAccount() 
    {
        return bankAccount;
    }
    public void setCompanyId(String companyId) 
    {
        this.companyId = companyId;
    }

    public String getCompanyId() 
    {
        return companyId;
    }
    public void setTaxId(String taxId) 
    {
        this.taxId = taxId;
    }

    public String getTaxId() 
    {
        return taxId;
    }
    public void setCompanyAddress(String companyAddress) 
    {
        this.companyAddress = companyAddress;
    }

    public String getCompanyAddress() 
    {
        return companyAddress;
    }
    public void setCompanyPhone(String companyPhone) 
    {
        this.companyPhone = companyPhone;
    }

    public String getCompanyPhone() 
    {
        return companyPhone;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getBankaccount() {
        return bankaccount;
    }

    public void setBankaccount(String bankaccount) {
        this.bankaccount = bankaccount;
    }

    public String getBankname() {
        return bankname;
    }

    public void setBankname(String bankname) {
        this.bankname = bankname;
    }

    public Long getDeliverytype() {
        return deliverytype;
    }

    public void setDeliverytype(Long deliverytype) {
        this.deliverytype = deliverytype;
    }

    public String getConsignee() {
        return consignee;
    }

    public void setConsignee(String consignee) {
        this.consignee = consignee;
    }

    public String getInvoicdeAddress() {
        return invoicdeAddress;
    }

    public void setInvoicdeAddress(String invoicdeAddress) {
        this.invoicdeAddress = invoicdeAddress;
    }

    public String getPhonenumber() {
        return phonenumber;
    }

    public void setPhonenumber(String phonenumber) {
        this.phonenumber = phonenumber;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("invoiceId", getInvoiceId())
            .append("orderId", getOrderId())
            .append("invoiceName", getInvoiceName())
            .append("invoiceCash", getInvoiceCash())
            .append("invoiceItem", getInvoiceItem())
            .append("createTime", getCreateTime())
            .append("expressCompany", getExpressCompany())
            .append("expressNum", getExpressNum())
            .append("status", getStatus())
            .append("lastDate", getLastDate())
            .append("employeeId", getEmployeeId())
            .append("assignId", getAssignId())
            .append("operatedesc", getOperatedesc())
            .append("memo", getMemo())
            .append("invoiceCode", getInvoiceCode())
            .append("invoiceNum", getInvoiceNum())
            .append("invoiceType", getInvoiceType())
            .append("bankAccount", getBankAccount())
            .append("companyId", getCompanyId())
            .append("taxId", getTaxId())
            .append("companyAddress", getCompanyAddress())
            .append("companyPhone", getCompanyPhone())
            .toString();
    }
}
